package com.njit.office.service;
import com.njit.office.form.AddTaskForm;
import com.njit.office.model.Result;
import com.njit.office.model.TaskModel;
import com.njit.office.model.TaskState;

public interface TaskService {

    /**
     * 新建一个任务
     * @param addTaskForm  TaskModel
     * @return Result
     */
    Result add(AddTaskForm addTaskForm);


    /**
     * 获取用户的task
     * @param userId 用户id
     * @return Result data:List<TaskModel>
     */
    Result getTask(String userId);


    /**
     * 删除指定任务
     * @param taskId 任务id
     * @return Result
     */
    Result deleteTask(String taskId);


    /**
     * 更新任务状态
     * @param taskId
     * @param taskState
     * @return
     */
    Result updateTaskState(String taskId, TaskState taskState);


    /**
     * 将任务标记为紧急状态
     * @param taskId
     * @return
     */
    Result urgentTask(String taskId);


    /**
     * 删除任务
     * @param taskId
     * @return
     */
    Result delTask(String taskId);
}
